package com.uls.hj.service;

import java.util.List;
import com.uls.hj.domain.HjVenues;
import com.uls.hj.vo.VenueCountVo;

/**
 * 场馆Service接口
 * 
 * @author hj
 * @date 2024-11-07
 */
public interface IHjVenuesService 
{
    /**
     * 查询场馆
     * 
     * @param venueId 场馆主键
     * @return 场馆
     */
    public HjVenues selectHjVenuesByVenueId(Long venueId);

    /**
     * 查询场馆列表
     * 
     * @param hjVenues 场馆
     * @return 场馆集合
     */
    public List<HjVenues> selectHjVenuesList(HjVenues hjVenues);

    /**
     * 新增场馆
     * 
     * @param hjVenues 场馆
     * @return 结果
     */
    public int insertHjVenues(HjVenues hjVenues);

    /**
     * 修改场馆
     * 
     * @param hjVenues 场馆
     * @return 结果
     */
    public int updateHjVenues(HjVenues hjVenues);

    /**
     * 批量删除场馆
     * 
     * @param venueIds 需要删除的场馆主键集合
     * @return 结果
     */
    public int deleteHjVenuesByVenueIds(Long[] venueIds);

    /**
     * 删除场馆信息
     * 
     * @param venueId 场馆主键
     * @return 结果
     */
    public int deleteHjVenuesByVenueId(Long venueId);

    /**
     * 查询所有可预约场馆信息
     *
     * @param status
     * @return
     */
    public List<HjVenues> selectHjVenuesListByStatus(int status);

    /**
     * 查询每个场馆被排班的次数
     * @return
     */
    public List<VenueCountVo> countSchedule();
}
